package richard.cnab240.modelo.enums;

import richard.cnab240.util.ArquivoUtils;

/**
 * Identifica os codigos dos bancos conforme o Banco Central
 * @author richard
 *
 */
public enum Banco {
	BANCO_DO_BRASIL(1, "Banco do Brasil S.A"),
	BANCO_CENTRAL_DO_BRASIL(2, "Banco Central do Brasil");
	//TODO incluir bancos restantes

	/*
	"1", "BANCO DO BRASIL S.A.
"2", "BANCO CENTRAL DO BRASIL
"3", "BANCO DA AMAZONIA S.A.
"4", "BANCO DO NORDESTE DO BRASIL S.
"7", "BANCO NACIONAL DO DESENVOLVIME
"8"BANCO DO ESTADO DE SAO PAULO S
"20"BANCO DO ESTADO DE ALAGOAS S.A
"21"BANESTES S.A BANCO DO ESTADO D
"22"CREDIREAL -EM ABSORCAO
"24"BANCO DE PERNAMBUCO S.A.-BANDE
"25"BANCO ALFA S/A
"26"BANCO DO ESTADO DO ACRE S.A.
"27"BANCO DO ESTADO DE SANTA CATAR
"28"BANEB-EM ABSORCAO
"29"BANCO BANERJ S.A.
"30"PARAIBAN-BANCO DA PARAIBA S.A.
"31"BANCO BEG S.A.
"32"BANCO DO ESTADO DO MATO GROSSO
"33"BANCO SANTANDER S.A.
"34"BANCO BEA S.A.
"35"BANCO BEC S.A.
"36"BANCO BRADESCO BBI S.A
"37"BANCO DO ESTADO DO PARA S.A.
"38"BANCO BANESTADO S.A.
"39"BANCO DO ESTADO DO PIAUI S.A.-
"40"BANCO CARGILL S.A
"41"BANCO DO ESTADO DO RIO GRANDE
"42"BANCO J. SAFRA S.A
"44"BANCO BVA SA
"45"BANCO OPPORTUNITY S.A.
"47"BANCO DO ESTADO DE SERGIPE S.A
"48"BANCO BEMGE S.A.
"59"BANCO DO ESTADO DE RONDONIA S.
"61"BANCO ABB SA
"62"HIPERCARD BANCO MULTIPLO S.A
"63"BANCO IBI S.A – BANCO MULTIPLO
"64"GOLDMAN SACHS DO BRASIL-BANCO
"65"LEMON BANK BANCO MULTIPLO S.A
"66"BANCO MORGAN STANLEY DEAN WITT
"67"BANCO BANEB SA
"68"BANCO BEA S.A
"69"BPN BRASIL BANCO MULTIPLO S.A
"70"BRB – BANCO DE BRASILIA S.A.
"72"BANCO RURAL MAIS S.A
"73"BB BANCO POPULAR DO BRASIL
"74"BANCO J. SAFRA S.A.
"75"BANCO CR2 S.A
"76"BANCO KDB DO BRASIL S.A
"96"BANCO BM&F DE SERV. DE LIQUIDA
"104"CAIXA ECONOMICA FEDERAL
"106"BANCO ITABANCO S.A.
"107"BANCO BBM S.A
"109"CREDIBANCO S.A.
"116"BANCO UNICO S.A.
"148"BANK OF AMERICA – BRASIL S.A.
"151"BANCO NOSSA CAIXA S.A
"153"CAIXA ECONOMICA ESTADUAL DO RI
"165"BANCO NORCHEM S.A.
"166"BANCO INTER-ATLANTICO S.A.
"168"HSBC INVESTMENT BANK BRASIL S.
"175"BANCO FINASA S.A.
"184"BANCO ITAU BBA S.A
"199"BANCO FINANCIAL PORTUGUES
"200"BANCO FICRISA AXELRUD S.A.
"201"BANCO AXIAL S.A.
"204"BANKPAR BANCO MULTIPLO S.A.
"205"BANCO SUL AMERICA S.A.
"206"BANCO MARTINELLI S.A.
"208"BANCO UBS PACTUAL S.A.
"210"DRESDNER BANK LATEINAMERIKA AK
"211"BANCO SISTEMA S.A.
"212"BANCO MATONE S.A.
"213"BANCO ARBI S.A.
"214"BANCO DIBENS S.A.
"215"BANCO COMERCIAL E DE INVESTIME
"216"BANCO REGIONAL MALCON S.A.
"217"BANCO JOHN DEERE S.A.
"218"BANCO BONSUCESSO S.A.
"219"BANCO ZOGBI S.A
"220"BANCO CREFISUL S.A.
"221"BANCO CHASE FLEMING S.A.
"222"BANCO CALYON BRASIL S/A
"224"BANCO FIBRA S.A.
"225"BANCO BRASCAN S.A.
"228"BANCO ICATU S.A.
"229"BANCO CRUZEIRO DO SUL S.A.
"230"UNICARD BANCO MULTIPLO S.A
"231"BANCO BOAVISTA INTERATLANTICO
"232"BANCO INTERPART S.A.
"233"BANCO GE CAPITAL S.A
"234"BANCO LAVRA S.A.
"235"BANK OF AMERICA – LIBERAL S.A
"236"BANCO CAMBIAL SA
"237"BANCO BRADESCO S.A.
"239"BANCO BANCRED S.A.
"240"BANCO DE CREDITO REAL DE MINAS
"241"BANCO CLASSICO S.A.
"242"BANCO EUROINVEST S.A. EUROBANC
"243"BANCO MAXIMA S.A.
"244"BANCO CIDADE S.A.
"245"BANCO EMPRESARIAL S.A.
"246"BANCO ABC BRASIL S.A.
"247"BANCO UBS S.A
"248"BANCO BOA VISTA INTERATLANTICO
"249"BANCO INVESTCRED UNIBANCO S.A
"250"BANCO SCHAHIN S.A
"252"BANCO FININVEST S.A.
"254"PARANA BANCO S.A.
"255"MILBANCO S.A.
"256"BANCO GULFINVEST S.A.
"258"BANCO INDUSCRED S.A.
"262"BANCO BOREAL S.A.
"263"BANCO CACIQUE S.A.
"265"BANCO FATOR S.A.
"266"BANCO CEDULA S.A.
"267"BANCO BBM-COM.C.IMOB.CFI S.A.
"275"BANCO REAL S.A.
"277"BANCO PLANIBANC S.A.
"282"BANCO BRASILEIRO COMERCIAL S.A
"291"BANCO BCN S.A.
"294"BCR/EM ABSORCAO
"300"BANCO DE LA NACION ARGENTINA
"302"BANCO DO PROGRESSO S.A.
"303"BANCO HNF S.A.
"304"BANCO PONTUAL S.A.
"318"BANCO BMG S.A.
"320"BANCO INDUSTRIAL E COMERCIAL S
"341"BANCO ITAU S.A.
"344"BANCO MERCANTIL S/A
"346"BANCO BFB _ EM ABSORCAO
"347"BANCO SUDAMERIS DO BRASIL S.A
"351"BANCO SANTANDER S.A.
"353"BANCO SANTANDER BRASIL S.A.
"356"BANCO ABN AMRO REAL S.A.
"366"BANCO SOCIETE GENERALE BRASIL
"369"BANCO DIGIBANCO S.A.
"370"BANCO WESTLB DO BRASIL S.A.
"372"BANCO ITAMARATI S/A
"375"BANCO FENICIA S.A.
"376"BANCO J.P. MORGAN S.A.
"388"BANCO BMD S.A.
"389"BANCO MERCANTIL DO BRASIL S.A.
"392"BANCO MERCANTIL DE SAO PAULO S
"394"BANCO BMC S.A.
"399"HSBC BANK BRASIL S.A.-BANCO MU
"409"UNIBANCO – UNIAO DE BANCOS BRA
"412"BANCO CAPITAL S.A.
"415"BANCO NACIONAL S.A.
"420"BANORTE – BANCO NACIONAL DO NO
"422"BANCO SAFRA S.A.
"424"BANCO SANTANDER NOROESTE S.A
"434"BANFORT – BANCO FORTALEZA S.A.
"453"BANCO RURAL S.A.
"456"BANCO DE TOKYO MITSUBISHI UFJ
"464"BANCO SUMITOMO MITSUI BRASILEI
"472"LLOYDS TSB BANK PLC
"473"BANCO FINANCIAL PORTUGUES-EM A
"477"CITIBANK N.A.
"479"BANCO ITAUBANK S.A.
"480"BANCO WACHOVIA S.A.
"487"DEUTSCHE BANK S. A. – BANCO AL
"488"JPMORGAN CHASE BANK
"489"BANCO FRANCES INTERNACIONAL-BR
"492"ING BANK N.V.
"493"BANCO UNION – BRASIL S.A
"494"BANCO DE LA REPUBLICA ORIENTAL
"495"BANCO DE LA PROVINCIA DE BUENO
"496"BANCO UNO-E BRASIL S.A
"498"CENTRO HISPANO BANCO
"499"BANCO IOCHPE S.A.
"501"BANCO BRASILEIRO IRAQUIANO S.A
"502"BANCO SANTANDER DE NEGOCIOS S.
"504"BANCO MULTIPLIC S.A.
"505"BANCO CREDIT SUISSE (BRASIL) S
"600"BANCO LUSO BRASILEIRO S.A.
"602"BANCO PATENTE S.A.
"604"BANCO INDUSTRIAL DO BRASIL S.
"607"BANCO SANTOS NEVES S.A.
"610"BANCO VR S.A.
"611"BANCO PAULISTA S.A.
"612"BANCO GUANABARA S.A.
"613"BANCO PECUNIA S.A.
"618"BANCO TENDENCIA S.A.
"621"BANCO APLICAP S.A.
"623"BANCO PANAMERICANO S.A.
"624"BANCO GENERAL MOTORS S.A
"625"BANCO ARAUCARIA S.A.
"626"BANCO FICSA S.A.
"627"BANCO DESTAK S.A.
"628"BANCO CRITERIUM S. A.
"630"BANCO INTERCAP S.A.
"633"BANCO RENDIMENTO S.A.
"634"BANCO TRIANGULO S.A.
"635"BANCO DO ESTADO AMAPA S.A.
"637"BANCO SOFISA S.A.
"638"BANCO PROSPER S.A.
"640"BANCO CREDITO METROPOLITANO S/
"641"BANCO ALVORADA S.A.
"643"BANCO PINE S.A.
"645"BANCO DO ESTADO DE RORAIMA S.A
"647"BANCO MARKA S.A.
"649"BANCO DIMENSAO S.A.
"650"BANCO PEBB S.A.
"652"BANCO ITAU HOLDING FINANCEIRA
"653"BANCO INDUSVAL S.A.
"654"BANCO A.J. RENNER S.A.
"655"BANCO VOTORANTIM S.A.
"656"BANCO MATRIX S.A.
"657"BANCO TECNICORP S.A.
"658"BANCO PORTO REAL S.A.
"702"BANCO SANTOS S. A.
"707"BANCO DAYCOVAL S.A.
"711"BANCO VETOR S.A.
"715"BANCO VEGA S.A.
"718"BANCO OPERADOR S.A.
"719"BANIF-BANCO INTERNACIONAL DO F
"720"BANCO MAXINVEST S.A.
"721"BANCO CREDIBEL S.A.
"722"BANCO INTERIOR DE SAO PAULO S.
"725"BANCO FINANSINOS S. A.
"728"BANCO FITAL S.A.
"729"BANCO FONTE CINDAM S.A.
"732"BANCO MINAS S.A.
"733"BANCO DAS NACOES S.A.
"734"BANCO GERDAU S.A.
"735"BANCO POTTENCIAL S.A.
"737"BANCO THECA S.A.
"738"BANCO MORADA S.A.
"739"BANCO BGN S.A.
"740"BANCO BARCLAYS S.A.
"741"BANCO RIBEIRAO PRETO S.A.
"742"BANCO EQUATORIAL S.A.
"743"BANCO SEMEAR S.A.
"744"BANKBOSTON N.A.
"745"BANCO CITIBANK S.A.
"746"BANCO MODAL S.A.
"747"BANCO RABOBANK INTERNATIONAL B
"748"BANCO COOPERATIVO SICREDI S.A.
"749"BANCO SIMPLES S.A.
"750"HSBC REPUBLIC BANK BRASIL S.A-
"751"DRESDNER BANK BRASIL S.A. BANC
"752"BANCO BNP PARIBAS BRASIL S.A
"753"BANCO COMERCIAL URUGUAI S.A.
"755"BANCO MERRILL LYNCH S.A.
"756"BANCO COOPERATIVO DO BRASIL S.
"757"BANCO KEB DO BRASIL S.A.
"800"BCR BANCO DE CREDITO REAL S.A
*/
	public static final int TAMANHO_BANCO = 3;
	private int codigo;
	private String descricao;
	
	private Banco(int codigo, String descricao){
		this.codigo = codigo;
		this.descricao = descricao;
	}
	
	public int getCodigo(){
		return codigo;
	}
	
	public String getDescricao(){
		return descricao;
	}
	
	@Override
	public String toString() {
		return ArquivoUtils.getCampoNumerico(getCodigo(), TAMANHO_BANCO);
	}
}
